home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / PROTX310.ZIP / COMPREXE.DOC < prev    next >
Text File  |  1997-08-13  |  9KB  |  244 lines

  1. ComprEXE v1.0 - EXE/COM compression tool
  2. Copyright (c) 1997 by Tom Torfs, all rights reserved
  3.  
  4.  
  5.                                -= MANUAL =-
  6.  
  7. 0.1 Table of contents
  8. -=-=-=-=-=-=-=-=-=-=-
  9.  
  10. 0.1 Table of contents
  11.  
  12. 1.1 Overview
  13.  
  14. 2.1 Commandline usage
  15.  
  16. 3.1 ComprEXE operation notes
  17.  
  18. 4.1 Contacting the author
  19.  
  20. 5.1 Errors, warnings & errorlevels
  21.  
  22. 6.1 Credits
  23.  
  24. 7.1 Licence
  25. 7.2 Disclaimer
  26.  
  27. 1.1 Overview
  28. -=-=-=-=-=-=
  29.  
  30. ComprEXE is an executable compressor. This means that it can make
  31. most COM and EXE files a whole lot smaller, while keeping them
  32. executable.
  33.  
  34. ComprEXE was primarily designed to be used together with ProtEXE.
  35. It uses a similar command line and error handling method.
  36.  
  37. 2.1 Commandline usage
  38. -=-=-=-=-=-=-=-=-=-=-
  39.  
  40. COMPREXE <oldfile>[.EXE|.COM] [<newfile>[.EXE|.COM]]
  41.          [-o] [-k] [-e] [-h]
  42.  
  43. * Command line basics *
  44.  
  45. <oldfile> is the name of the executable to compress. <newfile> is the name
  46. of the compressed executable. If you omit <newfile>, <oldfile> will be
  47. replaced and the original file will be stored as <oldfile>.OLD (unless
  48. you use option -o).
  49. If no extension is provided, .EXE or .COM is automatically appended.
  50.  
  51. You can specify multiple options on the command line to customize
  52. ComprEXE's behaviour. Note that for all options you can use the / switch
  53. character instead of the - character if you prefer.
  54.  
  55. An overview of the command line options can be displayed by putting
  56. the parameter /? (or -?) on the commandline.
  57.  
  58. * General options *
  59.  
  60. [-o]
  61.  
  62. If option -o is given, the original file will be deleted instead of
  63. renamed to .OLD. Using this option is not recommended.
  64. This option is ignored if an output file is specified.
  65.  
  66. [-k]
  67.  
  68. When the compression fails by default the target file is erased (or
  69. in case of the one-parameter form, the old file is left unchanged).
  70. When you specify option -k the file is written anyway.
  71.  
  72. * EXE-only options *
  73.  
  74. [-e]
  75.  
  76. EXE files contain the length of actual code/data in their header.
  77. Sometimes the EXE file contains data after this, which is not loaded
  78. when the program is run, but which might be read separately afterwards
  79. (overlays). This may also be debug info, used by a symbolic debugger
  80. (such as Turbo Debugger), but not required by the program itself. It
  81. may also be the 'new executable' part for Windows, OS/2, ... executables.
  82.  
  83. If option -e is given, any extra data in an EXE-file is simply copied into
  84. the target file, instead of being stripped off. This doesn't guarantee that
  85. the extra data is still useful after the compression. If you get the
  86. 'stripping extra data' warning and the compressed program doesn't work, you
  87. should try using this option.
  88.  
  89. [-h]
  90.  
  91. Option -h disables packing the header. All additional information in the
  92. EXE header will be copied to the target file.
  93.  
  94. 3.1 ComprEXE operation notes
  95. -=-=-=-=-=-=-=-=-=-=-=-=
  96.  
  97. ComprEXE adds a little decompression module to the program. This module
  98. moves itself to the top of memory, decompresses the program and performs
  99. all necessary segment relocations, restores the stack etc., and then jumps
  100. to the original entry point.
  101.  
  102. It is generally impossible to use ComprEXE multiple times on a program;
  103. the compressed program can't be compressed any further.
  104.  
  105. 4.1 Contacting the author
  106. -=-=-=-=-=-=-=-=-=-=-=-=-
  107.  
  108. See the chapter "Contacting the author" in PROTEXE.DOC.
  109.  
  110. 5.1 Errors, warnings & errorlevels
  111. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  112.  
  113. These are the errors and warnings that ComprEXE may give:
  114.  
  115. ERROR E01: bad option: <option>
  116. An invalid parameter was passed on the command line or in the configfile.
  117. A short usage info screen will be displayed. If you need more information,
  118. check out the chapter "Commandline usage".
  119.  
  120. ERROR E02: no filename specified on command line
  121. You didn't specify a source file to compress. The usage info screen
  122. will be displayed.
  123.  
  124. ERROR E03: neither COM nor EXE form of source file exists
  125. The filename you entered as a source file does not exist in either
  126. COM or EXE form. Correct the error and retry.
  127.  
  128. ERROR E04: source file not found
  129. The source file you specified does not exist. Correct the error and
  130. retry.
  131.  
  132. ERROR E05: can't rename file
  133. ComprEXE was unable to rename the source file to extension .OLD or to
  134. rename the temporary file. This might occur if there was already an
  135. .OLD file with the read-only attribute on.
  136.  
  137. ERROR E06: same file specified as source and target file
  138. You entered the same filename as source and target file, or you tried
  139. to compress an .OLD file with the one-parameter form. Correct the error
  140. or rename the .OLD file.
  141.  
  142. ERROR E07: error opening source file
  143. ComprEXE was unable to open the source file you specified. Make sure
  144. this file exists and does not have any special attributes or is not
  145. currently in use by another process.
  146.  
  147. ERROR E08: error creating target file
  148. ComprEXE was unable to create the target file you specified. Make sure
  149. that no file with that name and any special attributes exists already
  150. or is currently in use. Make sure the disk is not full, and you're
  151. not trying to create the targetfile in a full root directory or
  152. on a read-only medium.
  153.  
  154. ERROR E09: file is too small to compress (must be at least 4 bytes)
  155. You tried to compress a program smaller than 4 bytes. No use in
  156. compressing such a small program.
  157.  
  158. ERROR E10: COM file is too large to compress
  159. You tried to compress a COM file that would require more than 64K when
  160. compressed. In that case you should convert it to an EXE file using the
  161. included COM2EXE utility. Another possibility is that the file is not a
  162. valid COM nor a valid EXE file, but some sort of datafile.
  163.  
  164. ERROR E11: can't compress new executable
  165. The EXE file is a new executable. Examples of such new executables
  166. are Windows and OS/2 executables. Also most DOS extenders (protected
  167. mode programs), e.g. PharLap, DOS/4GW,... will use new executables.
  168. These executables can't be compressed.
  169.  
  170. ERROR E12: compression failed
  171. ComprEXE was unable to compress the file. It may already have been
  172. compressed and/or encrypted.
  173. If you wish to keep the 'compressed' file anyway, use option -k.
  174.  
  175. ERROR E13: error creating temporary file <filename>
  176. ComprEXE was unable to create a temporary file.
  177. Make sure the disk is not full or read-only.
  178.  
  179. ERROR E14: not enough memory
  180. You don't have enough conventional memory free for ComprEXE to run.
  181. Remove any TSR's and device drivers you don't need.
  182.  
  183. WARNING W01: ignoring option <option>
  184. You specified an EXE only option, but the program isn't an EXE.
  185. The option will be ignored.
  186.  
  187. WARNING W02: stripping extra data/overlays
  188. The source file contained extra data such as debug info or overlays.
  189. If the program doesn't work after compressing it, try using option
  190. -e.
  191.  
  192. WARNING W03: no extra data/overlays found, ignoring -e option
  193. You specified the -e option but no extra data was found in the EXE file.
  194. The -e option will be ignored.
  195.  
  196. WARNING W04: EXE is probably device driver; compression not recommended
  197. You tried to compress an EXE file which was in fact a device driver
  198. without using the -d option. Examples of these executables are
  199. EMM386.EXE, SETVER.EXE etc. This will most likely cause problems.
  200. NOTE: there is a very small chance that this warning might come up
  201. erroneously if ComprEXE incorrectly detects the EXE as being a
  202. device driver; if you're absolutely sure the EXE is not a device
  203. driver you can safely ignore this warning.
  204.  
  205. WARNING W05: can't remove file <filename>
  206. ComprEXE was unable to delete a file (temporary file or the original
  207. file if -o is used).
  208. This could be caused by another process accessing the file at the
  209. same time, special attributes, or unsufficient access rights to delete
  210. the file.
  211.  
  212. If an error occurs, ComprEXE will abort with the errorlevel set to
  213. the corresponding error number.
  214. Warnings are not fatal and don't cause an abort.
  215. If no error occurred, ComprEXE will exit with errorlevel 0.
  216.  
  217. 6.1 Credits
  218. -=-=-=-=-=-
  219.  
  220. See the chapter "Credits" in PROTEXE.DOC.
  221.  
  222. 7.1 Licence
  223. -=-=-=-=-=-
  224.  
  225. ComprEXE may freely be used and the executables created with it may
  226. be distributed without restrictions, for commercial and non-commercial
  227. purposes.
  228.  
  229. However, ComprEXE is a part of the ProtEXE package and may only be
  230. distributed as such. You may not distribute ComprEXE on its own.
  231.  
  232. 7.2 Disclaimer
  233. -=-=-=-=-=-=-=
  234.  
  235. I EXCLUDE ANY AND ALL IMPLIED WARRANTIES, INCLUDING WARRANTIES OF
  236. MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. I MAKE NO WARRANTY
  237. OR REPRESENTATION, EITHER EXPRESS OR IMPLIED, WITH RESPECT TO THIS SOFTWARE,
  238. ITS QUALITY, PERFORMANCE, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR
  239. PURPOSE. I SHALL HAVE NO LIABILITY FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
  240. DAMAGES ARISING OUT OF OR RESULTING FROM THE USE OR MODIFICATION OF THIS
  241. SOFTWARE.
  242.  
  243.                              -= END OF FILE =-
  244.